"""
    @id：选择具有指定 ID 的元素。
    @class：选择具有指定类名的元素。
    @href：选择具有指定链接地址的元素。
    @src：选择具有指定源地址的元素。
    @alt：选择具有指定替代文本的元素。
    @title：选择具有指定标题的元素。
    text(): 获取标签中的文本
"""
from lxml import etree
#
text_html = '''<div>
        <ul>
            <li class="item-1"><a href="link1.html">first itme</a></li>
            <li class="item-1"><a href="link2.html">second itme</a></li>
            <li class="item-inactive"><a href="link3.html">third itme</a></li>
            <li class="item-1"><a href="link4.html">forth itme</a></li>
            <li class="item-1"><a href="link5.html">fifth itme</a></li>
        </ul>
    </div>'''

tree = etree.HTML(text_html)

# 获取item-1出现的第一个标签  xpath首位是1开始
result = tree.xpath('//li[@class="item-1"][1]/a/text()')[0]
print(result)

# 获取item-1出现的最后一个
result = tree.xpath('//li[@class="item-1"][last()]/a/text()')[0]
print(result)

# 选择固定范围的标签
result = tree.xpath('//li[@class="item-1"][position()>1 and position()<3]/a/text()')
